package com.mzy.xmyx.acl.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.mzy.xmyx.model.acl.Role;
import com.mzy.xmyx.vo.acl.RoleQueryVo;

import java.util.List;
import java.util.Map;

public interface RoleService extends IService<Role> {

    /**
     * 获取角色分页列表(带搜索)
     *
     * @param current 当前页码
     * @param limit 查询深度
     * @param roleQueryVo 查询条件
     * @return IPage<Role>
     */
    IPage<Role> selectPage(Integer current, Integer limit, RoleQueryVo roleQueryVo);


    /**
     * 获取所有角色信息和当前用户已分配角色信息
     * @param adminId 用户id
     * @return Map<String, Object>
     */
    Map<String, Object> getRoleByAdminId(Long adminId);

    /**
     * 根据用户id分配角色
     * @param adminId 用户id
     * @param roleIdList  角色id（可以有多个）
     * @return Boolean
     */
    Boolean saveAdminRoleRelationship(Long adminId, List<Long> roleIdList);
}
